package com.glsc.ngateway.common.base.domainmapper;

import com.glsc.ngateway.common.base.domain.mysql.gateway.platform.flow.FlowFormEquipmentModifyVirtualDeviceDetail;
import com.glsc.ngateway.common.api.flowable.dto.task.formData.equipment.domainDto.FlowFormEquipmentModifyVirtualDeviceDetailDto;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @Author: xuchang
 * @Desc: domin到dto转换
 */
@Mapper(componentModel = "spring")
public interface FlowFormEquipmentModifyVirtualDeviceDetailMapper {

    FlowFormEquipmentModifyVirtualDeviceDetailMapper INSTANCE = Mappers.getMapper(FlowFormEquipmentModifyVirtualDeviceDetailMapper.class);

    @Mapping(target = "ipList", ignore = true)
    @Mapping(target = "ipListModified", ignore = true)
    FlowFormEquipmentModifyVirtualDeviceDetailDto domain2dto(FlowFormEquipmentModifyVirtualDeviceDetail domain);


    List<FlowFormEquipmentModifyVirtualDeviceDetailDto> domain2dto(List<FlowFormEquipmentModifyVirtualDeviceDetail> domain);

    @Mapping(target = "ipListStr", ignore = true)
    @Mapping(target = "ipListModifiedStr", ignore = true)
    @Mapping(target = "insertTime", ignore = true)
    @Mapping(target = "updateTime", ignore = true)
    @Mapping(target = "deleted", ignore = true)
    FlowFormEquipmentModifyVirtualDeviceDetail dto2domain(FlowFormEquipmentModifyVirtualDeviceDetailDto dto);

    List<FlowFormEquipmentModifyVirtualDeviceDetail> dto2domain(List<FlowFormEquipmentModifyVirtualDeviceDetailDto> dto);
}
